{{tag> viewers codecs ubuntu audio vidéo brouillon installer}}

----


====== Lecteur multimédia : GStreamer ======

GStreamer est un moteur utilisé par d'autres applications pour lire les fichiers multimédia.


===== Introduction =====

Ceci est une traduction du site officiel (cf [[#liens]]).

GStreamer est une bibliothèque permettant la connexion de composants de gestion de média, allant de la simple lecture Ogg/Vorbis à de l'édition audio complexe (mixage) et vidéo (édition non linéaire).\\
Les applications peuvent ainsi profiter des avancées technologiques faites au niveau des codecs et des filtres de manière totalement transparente. Les développeurs peuvent ajouter des nouveaux codecs et filtres en écrivant de simples plugins avec une interface générique propre.\\
GStreamer est sous licence LGPL.

===== Installation =====

GStreamer est installé par défaut sous Ubuntu.

Pour ceux désirant les dernières versions un dépôt ppa est disponible à cette [[https://launchpad.net/~gstreamer-developers/+archive/ppa|adresse]].
<note important>Vous allez installer un dépôt non officiel. Les logiciels installés à partir de ce dépôt n'auront pas de support officiel. Contactez le mainteneur du dépôt si vous avez un problème.</note>
== Import de la clé PGP ==
  sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 051D8B58
== Pour Jaunty ==
  deb http://ppa.launchpad.net/gstreamer-developers/ppa/ubuntu jaunty main 

== Pour karmic ==
  deb http://ppa.launchpad.net/gstreamer-developers/ppa/ubuntu karmic main 

===== Utilisation =====

Vous utilisez de manière totalement transparente GSTreamer lors de la lecture de fichiers multimédia par le biais d'une des [[http://gstreamer.freedesktop.org/apps/|applications utilisant GSTreamer]].
==== Configuration ====

Lancer : <code>gstreamer-properties
</code>
==== Optimisation ====

<note warning>**A TESTER**</note>

<code>gconf-editor</code>

Dans /system>gstreamer>0.10>default  changer la valeur de videosink par xvimagesink.
==== Plugins ====

Comme précisé dans l'[[#introduction]], GSTreamer est modulaire et de nombreux plugins viennent enrichir ses possibilités. En voici quelques uns (tiré d'autres pages du wiki) :

   * Voici les paquets à ajouter (avec un [[:gestionnaire_de_paquets#Les_interfaces|gestionnaire de paquets]]) pour lire différents formats de fichiers.

^ Format ^ Paquet ^ [[:dépôts]] ^ Plus d'informations ^
| Ogg, Vorbis, Theora, Flac, etc   | gstreamer0.10-plugins-good | main | installé par défaut |
| [[:lecture_et_encodage_de_fichiers_audio#le_cas_du_mp3|mp3]], DVD, mpeg2, asf     |gstreamer0.10-plugins-ugly     | universe |  |
| <video> + [[w32codecs]]   | gstreamer0.10-ffmpeg | universe | [[w32codecs]] |
| <diffusion> + [[:lecture_et_encodage_de_fichiers_audio#Le cas du format MPC|mpc]]   | gstreamer0.10-plugins-bad | universe | Flash (swf), QT, flux mms etc |
| [[:formats_non-libres#Décodage du AAC|aac]]   | gstreamer0.10-plugins-bad-multiverse | multiverse |  |
| QuickTime QTX and DirectShow/DMO DLL   | gstreamer0.10-pitfdll | universe | Ne semble pas fonctionner sur la 0.10 |
| m4a   | 	 gstreamer0.10-plugins-really-bad | Il n'est pas dans les dépôts de Hardy. Liens vers des paquets: [[http://www.debian-multimedia.org/pool/main/g/gst-plugins-really-bad/gstreamer0.10-plugins-really-bad_0.10.3-0.5_i386.deb|i386]] [[http://www.debian-multimedia.org/pool/main/g/gst-plugins-really-bad/gstreamer0.10-plugins-really-bad_0.10.3-0.5_amd64.deb|amd64]]. Si vous avez l'erreur "dépendances non satisfaites pour libwavpack0", installer le paquet de Dapper (marche parfaitement) disponible [[http://packages.ubuntu.com/dapper/libwavpack0|ici]] |  |
En une ligne, ça donne //(sans l'installation du support m4a)// :

<code>sudo apt-get install gstreamer0.10-ffmpeg gstreamer0.10-fluendo-mp3 gstreamer0.10-pitfdll gstreamer0.10-sdl gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse mpg321</code>


Vous pouvez aussi lister les plugins supportés avec la commande suivante : <code>gst-inspect-0.10</code>





==== Les pipelines ====

Un pipeline relie la sortie d'une fonction à l'entrée de la suivante. Il est symbolisé par le point d'exclamation ''!'' (exemple de fonctions : lecture du fichier, décodage, conversion et envoi vers le pilote de la carte son).

Les pipelines sont utilisés pour décoder les flux multimédia bien sûr mais aussi pour les encoder. Ainsi pour encoder vos CD de musique, l'application [[Sound juicer]] les utilise.
Vous pouvez les éditer en lançant directement la commande suivante :
<code>gnome-audio-profiles-properties</code>

Vous trouverez donc ici les exemples qui vous permettront d'encoder votre musique vers différents formats :
^ Extension ^ Pipeline GStreamer ^ Commentaire(s) ^ 
| ogg | ''audio/x-raw-float,rate=44100,channels=2 ! vorbisenc name=enc quality=0.5 ! oggmux'' | |
| flac | ''audio/x-raw-int,rate=44100,channels=2 ! flacenc name=enc'' | |
| mp3 | ''audio/x-raw-int,rate=44100,channels=2 ! lame name=enc'' | nécessite le [[#plugin]] correspondant |
| aac | ''audio/x-raw-int,rate=44100,channels=2 ! faac ! ffmux_mp4'' | nécessite le [[#plugin]] correspondant |
| wav | ''audio/x-raw-int,rate=44100,channels=2 ! wavenc name=enc'' | |

<note tip>Une précision au sujet de la qualité des fichiers .ogg :

Selon [[http://fr.wikipedia.org/wiki/Vorbis|la page wiki du codec Vorbis]], "//À partir d'un flux audio stéréo échantillonné à 44,1 kHz (échantillonnage standard d'un CD audio), le codeur produit en sortie un flux à un débit de 45 à 500 kbit/s suivant la qualité choisie (cf tableau). Le coefficient de qualité est une métrique arbitraire et peut varier de -1 à 10//"( voir notamment dans la page la correspondance entre facteur de qualité et débit ).
Dans un pipeline gstreamer, il semble nécessaire d'indiquer ce facteur de qualité **//divisé par 10//** ( valeur comprise entre -0,1 et 1 ); Par exemple, une valeur **quality=0,9** donnera un débit de 320 kb/s...</note>

D'autres précisions pour le mp3 :
  - vous pouvez rajouter d'autres paramètres pour Lame (en plus de //name=enc//), comme par exemple //preset=standard//. La liste complète est la sortie de la commande suivante : <code>$ gst-inspect-0.10 lame</code>
  - Si les méta-informations (id3tag) ne sont pas correctes, ajoutez les pipelines suivants après le pipeline de Lame : // ! xingmux ! id3v2mux// __exemple pour le mp3__ <code>audio/x-raw-int,rate=44100,channels=2 ! lame name=enc ! id3v2mux</code>


D'autres exemples sur les pipelines : 
  * ''$ man gst-launch-0.10''
  * [[http://www.coagul.org/article.php3?id_article=316|gst-launch : la puissance de gstreamer en ligne de commande]]


===== Liens =====

  * [[http://gstreamer.freedesktop.org/|Site Officiel]]
  * [[:lecture_et_encodage_de_fichiers_audio]]
  * [[http://simos.info/blog/archives/566]]
  * [[http://lame.cvs.sourceforge.net/*checkout*/lame/lame/doc/html/presets.html|Les réglages de l'encodeur LAME]]
  * [[http://blog.nicolargo.com/2009/01/introduction-a-gstreamer-le-framework-multimedia.html|Introduction à GStreamer par l'exemple]]
  * [[http://blog.nicolargo.com/2009/02/jai-streame-avec-gstreamer.html|Streaming audio et vidéo avec GStreamer]]

===== Tutorial vidéo =====

  * [[http://www.dailymotion.com/video/x8oive_installer-les-codecs-ubuntu_tech|Installer facilement les codecs]] 

Billet résumant tout ce qui concerne le multimédia :

  * http://www.greguti.com/petitlinux/index.php?entry=entry070319-090834

----

//Contributeurs : Rédigée et maintenue par [[utilisateurs:Id2ndR]].
Inspiré de la documentation anglophone [[https://help.ubuntu.com/community/CDRipping]]//